#ifndef __LED_H
#define __LED_H

#include "FreeRTOS.h"
#include "task.h"
#include "at32f413.h"

struct Led
{
    uint32_t pins;
    gpio_pull_type pull;
    crm_periph_clock_type crm_periph_clock;
    gpio_type* gpiox;

    void (*init)(struct Led* led);
    void (*toggle)(struct Led* led);
    void (*on)(struct Led* led);
    void (*off)(struct Led* led);
	void (*create_task)(void);
};

extern struct Led led1;

#endif